package com.duoec.doc.mock.dto;

import java.util.HashMap;
import java.util.Map;

/**
 * @author xuwenzhen
 * @date 2020/2/5
 */
public class DuoMockRequest {

    /**
     * 请求头数据，多个同名的取第一个
     */
    private Map<String, String> header;

    /**
     * URL参数
     */
    private Map<String, String[]> parameterMap;

    /**
     * 路径参数
     */
    private Map<String, String> pathParameterMap;

    /**
     * 当前URL（不包含协议和域名）
     */
    private String uri;

    /**
     * 当前命中的映射路径
     */
    private String path;

    /**
     * http提交的方法
     */
    private String method;

    /**
     * 当前服务的appId，用于确定是哪个项目
     *
     * @demo m.web.cp.duoec
     */
    private String appId;

    public void addHeader(String key, String value) {
        if (header == null) {
            header = new HashMap<>(16);
        }
        header.put(key, value);
    }

    public void setParameterMap(Map<String, String[]> parameterMap) {
        this.parameterMap = parameterMap;
    }

    public Map<String, String[]> getParameterMap() {
        return parameterMap;
    }

    public void setUri(String uri) {
        this.uri = uri;
    }

    public String getUri() {
        return uri;
    }

    public Map<String, String> getHeader() {
        return header;
    }

    public void setHeader(Map<String, String> header) {
        this.header = header;
    }

    public Map<String, String> getPathParameterMap() {
        return pathParameterMap;
    }

    public void setPathParameterMap(Map<String, String> pathParameterMap) {
        this.pathParameterMap = pathParameterMap;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public String getPath() {
        return path;
    }

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getMethod() {
        return method;
    }

    public void setMethod(String method) {
        this.method = method;
    }
}
